<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Building the C# API</title>
    <link rel="stylesheet" href="gettingStarted.css" type="text/css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
    <link rel="start" href="index.html" title="Berkeley DB Installation and Build Guide" />
    <link rel="up" href="build_win.html" title="Chapter 5.  Building Berkeley DB for Windows" />
    <link rel="prev" href="build_win_java.html" title="Building the Java API" />
    <link rel="next" href="build_win_sql.html" title="Building the SQL API" />
  </head>
  <body>
    <div xmlns="" class="navheader">
      <div class="libver">
        <p>Library Version 11.2.5.3</p>
      </div>
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">Building the C# API</th>
        </tr>
        <tr>
          <td width="20%" align="left"><a accesskey="p" href="build_win_java.html">Prev</a> </td>
          <th width="60%" align="center">Chapter 5. 
		Building Berkeley DB for Windows
        </th>
          <td width="20%" align="right"> <a accesskey="n" href="build_win_sql.html">Next</a></td>
        </tr>
      </table>
      <hr />
    </div>
    <div class="sect1" lang="en" xml:lang="en">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both"><a id="build_win_csharp"></a>Building the C# API</h2>
          </div>
        </div>
      </div>
      <p>
        The C# support is built by a separate Visual Studio solution and
        requires version 2.0 (or higher) of the .NET platform. If the Berkeley
        DB utilities are required, build Berkeley DB first following the
        instructions under <a class="xref" href="build_win.html#win_build32" title="Building Berkeley DB for 32 bit Windows">Building Berkeley DB for 32 bit Windows</a> 
        or <a class="xref" href="win_build64.html" title="Building Berkeley DB for 64-bit Windows">Building Berkeley DB for 64-bit Windows</a>.
    </p>
      <p>
        To build the C# API in Visual Studio
        2005/Visual Studio 2008, the solution is
        <code class="filename">build_windows\BDB_dotnet.sln</code>; in Visual Studio
        2010, the solution is
        <code class="filename">build_windows\BDB_dotnet_vs2010.sln</code>.
    </p>
      <p>
        By default, the solution will build the native libraries, the
        managed assembly and all example programs.  The NUnit tests need to
        be built explicitly because of their dependence upon the NUnit
        assembly.  The native libraries will be placed in one of the
        following subdirectories, depending upon the chosen configuration:
    </p>
      <table class="simplelist" border="0" summary="Simple list">
        <tr>
          <td>
            <code class="filename">build_windows\Win32\Debug</code>
          </td>
        </tr>
        <tr>
          <td>
            <code class="filename">build_windows\Win32\Release</code>
          </td>
        </tr>
        <tr>
          <td>
            <code class="filename">build_windows\x64\Debug</code>
          </td>
        </tr>
        <tr>
          <td>
            <code class="filename">build_windows\x64\Release</code>
          </td>
        </tr>
      </table>
      <p>
    The managed assembly and all C# example programs will be placed in one of
    the following subdirectories, depending upon the chosen configuration:
</p>
      <table class="simplelist" border="0" summary="Simple list">
        <tr>
          <td>
            <code class="filename">build_windows\AnyCPU\Debug</code>
          </td>
        </tr>
        <tr>
          <td>
            <code class="filename">build_windows\AnyCPU\Release</code>
          </td>
        </tr>
      </table>
      <p>
    The native libraries need to be locatable by the .NET platform, meaning
    they must be copied into an application's directory, the Windows or
    System directory, or their location must be added to the PATH
    environment variable.  The example programs demonstrate how to
    programmatically edit the PATH variable.
</p>
    </div>
    <div class="navfooter">
      <hr />
      <table width="100%" summary="Navigation footer">
        <tr>
          <td width="40%" align="left"><a accesskey="p" href="build_win_java.html">Prev</a> </td>
          <td width="20%" align="center">
            <a accesskey="u" href="build_win.html">Up</a>
          </td>
          <td width="40%" align="right"> <a accesskey="n" href="build_win_sql.html">Next</a></td>
        </tr>
        <tr>
          <td width="40%" align="left" valign="top">Building the Java API </td>
          <td width="20%" align="center">
            <a accesskey="h" href="index.html">Home</a>
          </td>
          <td width="40%" align="right" valign="top"> Building the SQL API</td>
        </tr>
      </table>
    </div>
  </body>
</html>
